Analyse von Programmieraufgaben durch Softwareproduktmetriken
نویسندگان
چکیده
Softwareentwicklung kann über Kennzahlen, die durch den Einsatz von Metriken erhoben werden, beobachtet und bewertet werden. Dabei kann sowohl das entwickelte Softwareprodukt als auch der Entwicklungsprozess Ziel der Beobachtung und Bewertung sein (Conte u. a., 1986). Der Einsatz von Metriken wird vielfach kritisch diskutiert: Auf der einen Seite steht die Aussage, dass ohne Messung keine Kontrolle möglich ist (z.B. (DeMarco, 1986)) und auf der andere Seite die Erkenntnis, dass die Messung das Ergebnis selber beeinflussen kann und viele Metriken gar nicht das messen, was sie zu messen vorgeben (z.B. (Kaner u. Bond, 2004)). Insgesamt kann der Einsatz von Softwaremetriken aber als etabliert betrachtet werden. Nicht nur in der industriellen Praxis, sondern auch in der Lehre werden Softwareprodukte entwickelt. Es handelt sich hierbei zwar nicht um Produkte im ökonomischen Sinne, aber doch um Artefakte, deren Eigenschaften mit denselben Metriken messbar sind. Zudem ist der Begriff der Kontrolle in Form von Lernfortschrittskontrollen ein zentraler Bestandteil der Lehre. Es erscheint daher sinnvoll, Werkzeuge zur Unterstützung der Lehre zu konzipieren, mit denen Kennzahlen automatisch gewonnen und analysiert werden können. Dies ist insbesondere in E-Learningund Blended-Learning-Szenarien wichtig, in denen eine (teil-)automatisierte Führung durch den Lernstoff angeboten werden soll und daher nicht immer ein Lehrender zur Verfügung steht, der die Leistungsfähigkeit seiner Studierenden einschätzt und ihnen passende Übungsaufgaben zuweist. Um hier eine Automatisierung zu erreichen sollte untersucht werden, wie Softwaremetriken zur Beobachtung des Lernprozesses und der dabei erzeugten Produkte einsetzbar sind. Der vorliegende Artikel stellt letzteres in den Fokus und befasst sich daher ausschließlich mit Softwareproduktmetriken. Aus praktischen Erwägungen heraus beziehen sich die im Folgenden diskutierten Ansätze und Ergebnisse auf Anfängervorlesungen zur Programmierung. Eine Generalisierung auf fortgeschrittene Lehrveranstaltungen zur Programmierung sowie Software Engineering im Allgemeinen bedarf zweifellos weiterer Forschungsarbeit, die weit über den Rahmen dieses Artikels hinaus geht. Der Artikel ist wie folgt gegliedert: Zunächst werden einige Szenarien skizziert, in denen Metriken zur Lehrunterstützung angewandt werden können. Im selben Abschnitt werden zudem grundsätzliche Analysemethoden und existierende Ansätze genannt. Anschließend werden Metriken vorgestellt, die bei der Analyse von Programmieraufgaben genutzt werden können. Danach werden mehrere Fallbeispiele diskutiert, in denen eine Auswahl der Metriken auf tatsächliche Lösungen von Programmieraufgaben angewandt wurden. Aus den daraus gewonnenen Erkenntnissen wird am Ende des Beitrags ein Fazit gezogen.
منابع مشابه
Generierung von Zusatzinformationen in automatischen Systemen zur Bewertung von Programmieraufgaben
Zusammenfassung: Gängige Systeme zur automatischen Bewertung von Programmieraufgaben geben Feedback und Punktzahlen meist basierend auf der Ausführung von Testfällen. Das Feedback könnte jedoch vielfältiger und genauer gestaltet werden, wenn weitere Informationen berücksichtigt werden, die leicht gewonnen werden können. Der vorliegende Beitrag diskutiert einige der Möglichkeiten konzeptionell u...
متن کاملProFormA-Middleware - Vorteile von Programmierbewertungssystemen und Lernmanagementsystemen verbinden
Das Poster stellt ProFormA (Programming Formative Assessment), eine Middleware der Ostfalia vor. Ziel der Middleware ist es, Vorteile eines Lernmanagementsystems (LMS) mit denen eines Bewertungssystem, auch Grader genannt, zur automatischen Programmierbewertung zu verbinden. Darüber hinaus können Programmieraufgaben durch ProFormA besser wiederverwendet werden und ein besserer Austausch von aut...
متن کاملAuf dem Weg zu variablen Programmieraufgaben: Requirements Engineering anhand didaktischer Aspekte(Towards Variable Programming Tasks: Requirements Engineering Based on Didactic Aspects)
E-assessment systems for automatic evaluation and feedback generation for programming tasks have become increasingly popular in recent years at universities. They allow a more individualized support of programming skills than it would be possible in personal contact with instructors even for lectures with a large number of students. A problem in the use of e-assessment systems is the number of ...
متن کاملAutomatische Bewertung von Android-Apps
Im Fachbereich Informatik der Hochschule Trier wird seit mehreren Jahren ein System zur automatischen Software-Bewertung (ASB) eingesetzt und weiterentwickelt. Das ASB-System ist eine Web-Anwendung, die es Studierenden ermöglicht, Lösungen zu Programmieraufgaben innerhalb eines festgelegten Zeitraums einzureichen. Die Lösungen werden durch zuvor installierte Programme automatisch bewertet. In d...
متن کاملDidaktische Anmerkungen zur Unterstützung der Programmierlehre durch E-Learning
Diese Arbeit verknüpft Lernziele, didaktische Methoden und Techniken zur Bearbeitung und Bewertung von Programmieraufgaben in E-Learning-Plattformen. Das Ziel ist dabei, sowohl eine Bewertungsgrundlage für den Einsatz einer Plattform für beliebige Lehrveranstaltungen der Programmierlehre zu schaffen als auch ein Gesamtkonzept für eine idealisierte E-Learning-Anwendung zu präsentieren. Dabei ste...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2013